package com.hb.medical_research_system.common;

import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.general.find.PdfTextFind;

import java.awt.*;

public class HighlightPDFUtils {

    static Color[] colors = {Color.yellow, Color.pink, Color.cyan, Color.LIGHT_GRAY, Color.green};

    public static void light(String[] line, String url) {
        //加载PDF文档
        PdfDocument pdf = new PdfDocument();
        pdf.loadFromFile(url);
        PdfTextFind[] result = null;
        //遍历文档每一页
        PdfPageBase page;
        for (int i = 0; i < pdf.getPages().getCount(); i++) {
            //获取特定页
            page = pdf.getPages().get(i);
            for (int j = 0; j < line.length; j++) {
                result = page.findText(line[j]).getFinds();
                for (PdfTextFind find : result) {
                    //高亮显示查找结果
                    find.applyHighLight(colors[j]);
                }
            }

        }

        pdf.saveToFile(url.substring(0, url.length() - 4) + "_light" + url.substring(url.length() - 4));
        pdf.close();
    }


    public static void main(String[] args) {
        HighlightPDFUtils.light(new String[]{"2004年 5月至 2004年 11月间我院对 68例症", "肺静"}, "F:\\桌面\\hhh3.pdf");
    }
}
